﻿namespace Pub.Class
{
    using System;
    using System.Collections.Generic;

    public interface ICache2 : IAddIn
    {
        void Clear();
        void Compress<T>(string key, T obj) where T: class;
        void Compress<T>(string key, T obj, int seconds) where T: class;
        bool ContainsKey(string key);
        T Decompress<T>(string key) where T: class;
        object Get(string key);
        IList<CachedItem> GetList();
        void Insert(string key, object obj);
        void Insert(string key, object obj, int seconds);
        void Remove(string key);
        void RemoveByPattern(string pattern);
    }
}

